// 路由鉴权，鉴权，项目当中的路由能不能被访问的权限设置 ，(某一个路由在什么条件下可以访问 什么条件下不可以访问)
// 全部路由组件：登陆组件| 首页组件| 任意路由组件|404组件|数据大屏组件|权限管理组件(三个子组件)|商品管理组件（四个子路由）
// 用户未登录：可以访问登陆组件 ，其余的不能访问 
// 用户已登录：可以访问其他泵访问登录  判断依据为Token
// 引入pinia
import pinia from './store/index'
// 引入路由器
import router from '@/router/index'
import nprogress from 'nprogress'
// 引入进度条的样式
import "nprogress/nprogress.css"
nprogress.configure({ showSpinner: false });
// 引入用户的小仓库的数据
import useUserstore from '@/store/modules/user'
const userStore = useUserstore(pinia)
// const token = userStore.token
// 引入用户信息
// const userName = userStore.userName
console.log('hhhhhh', userStore.userName)

// 全局前置守卫

// let token = false
// console.log({token});
router.beforeEach((to, from, next) => {
    document.title='xxx后台管理系统-'+to.meta.title
    next()
    nprogress.start()
    console.log(to, from);
    // 判断有没有登录
    // let token  = false
    if (!localStorage.getItem('username')) {
        // 如果没有登录，并且是跳转至登录页
        if (to.path == "/login") {
            // 直接跳转
            next();
        } else {
            // 否则直接强制跳转至登录页
            router.push('/login')
        }
    } else {
        // 如果已经登录，并且不是跳转至登录页
        if (to.path !== "/login") {
            // 直接跳转
            next();
        } else {
            // 否则直接强制跳转至上一个页面
            router.push(from.path)
        }
    }
});


// 全局后置守卫
router.afterEach((to, from) => {
    // 登陆之后不能跳转登录页面
    nprogress.done()
    console.log({ to, from });
})
